package cn.iocoder.yudao.module.system.controller.admin.portal.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;


@Schema(description = "管理后台 - 门户网站用户部门新增/修改 Request VO")
// 添加此注解，忽略所有未知字段
@JsonIgnoreProperties(ignoreUnknown = true)
@Data
public class PortalDeptSaveReqVO {

    @Schema(description = "部门编码", requiredMode = Schema.RequiredMode.REQUIRED)
    private String orgCode;

    @Schema(description = "部门全称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
    @NotEmpty(message = "部门全称不能为空")
    private String name;

    @Schema(description = "部门简称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
    @NotEmpty(message = "部门简称不能为空")
    private String shortName;

    @Schema(description = "上级部门编码", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "上级部门编码不能为空")
    private String parentCode;

    @Schema(description = "创建人", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "创建人不能为空")
    private String createUser;

    @Schema(description = "部门层级路径", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "部门层级路径不能为空")
    private String parents;

}